This iteration conveys a clearer visual image among the others. I like how these random particles can create all these static smoky forms just based on the amplitude of the mic.
Iterations:
Each new bubble is outlined in black stroke. You are able to better differentiate various sizes bubbles which helps to add a depth of field to the flat canvas. It also brings out a sense of immersion by revealing the relationships amongst bubbles that are being drawn from an array.
It might break since too many bubbles are being drawn at the same time. The enormous amount of bubbles generates a compelling pointillism painting as if it’s painted by a notorious artist.
function Ball( ) {
this.x = random(innerWidth)
this.y = random(innerHeight)
this.y = random(innerHeight)
this.dx = random(width)
this.dy = this.dx
this.fill = random(0, 360)
this.dy = this.dx
this.fill = random(0, 360)
this.update = function () {
this.x = this.dx //draw new a bubble on the same X-coordinate, but random Y-coordinate //
this.y = this.y + random(-5, 5);
this.x = this.dx //draw new a bubble on the same X-coordinate, but random Y-coordinate //
this.y = this.y + random(-5, 5);
Processing + Arduino
Experiment sounds and lights with data.